/**
@author: LHG
@date: 2021/7/15
@note:
**/
package main

import "fmt"

/**
冒泡排序：
通过对待排序序列从后往前（从下标较大的元素开始）
一次
*/
func main() {
	sortdata := []int{2, 5, 6, 8, 93, 6}
	fmt.Println(bubbleSort(sortdata))
}

/**
冒泡排序
*/
func bubbleSort(sortData []int) []int {
	//控制整个排序序列的循环次数
	for i := 0; i < len(sortData); i++ {
		//这个循环的目的是将每一轮找出最大的那个数移动到末尾
		for j := 0; j < len(sortData)-1; j++ {
			if j < len(sortData)-1 {
				if sortData[j] > sortData[j+1] {
					temp := sortData[j+1]       //取出后一个索引的值
					sortData[j+1] = sortData[j] //将前一个索引的值，存入后一位索引位置
					sortData[j] = temp          //将之前存入temp的sortData[i+1]存给sortData[i]
				}
			}
		}
	}
	return sortData
}
